Enhancing search results with social networking data

ABSTRACT

A method of enhancing search results pertaining to an item with information about the item from a social network is disclosed. It is detected that a user is searching for information about the item in a context outside of a social networking context. Data relating to the item is collected from a social network of the user. A notification of the data relating to the item is generated to supplement a search result that is to be presented to the user in response to the searching.

CLAIM OF PRIORITY

This application is a continuation of U.S. application Ser. No.15/822,779, filed Nov. 27, 2017, which is a continuation of U.S.application Ser. No. 13/722,449, filed Dec. 20, 2012, each of which ishereby incorporated by reference in its entirety.

TECHNICAL FIELD

This application relates generally to the technical field of internetcommerce and, in one specific example, to enhancing a result of anonline search for information about an item with information derivedfrom a social network of the user conducting the online search.

BACKGROUND

When a user searches for information about an item, the user may receivevarious details about the item. For example, if the user searches forthe item on Google, the user may be presented with a list of UniformResource Locators (URLs) of web pages containing information relevant tothe item. Or, if the user searches for information about an item from alocal commerce application, the user may receive information pertainingto local commerce of the item, such as local stores that have the itemin stock, the prices for the item at the local stores, and so on.Furthermore, the user may be given the option to purchase the item froma local store so that the item is waiting for the user at the localstore. Some local commerce applications, such as RedLaser, mayincorporate barcode-scanning technology, which allows the user to scan abarcode of the item to receive the information about the item.

BRIEF DESCRIPTION OF THE DRAWINGS

Some embodiments are illustrated by way of example and not limitation inthe figures of the accompanying drawings in which:

FIG. 1 is a network diagram depicting a client-server system withinwhich various example embodiments may be deployed;

FIG. 2 is a block diagram illustrating multiple applications that, inone example embodiment, are provided as part of the networked system ofFIG. 1;

FIG. 3 is a block diagram illustrating example modules of the socialnetworking integration application(s) of FIG. 2;

FIG. 4 is a flow chart illustrating an example method of supplementing apresentation of search results pertaining to an item with informationabout the item collected from a social network of a user;

FIG. 5 is a flow chart illustrating an example method of notifying auser who is looking for a local store that has an item in stock of anadditional user in the user's social network who owns the item;

FIG. 6 is a flow chart illustrating an example method of notifying auser of information from a social network of the user that is relevantto a user's search for information about an item;

FIG. 7 is a flow chart illustrating an example method of storing nuggetsof information that are relevant to items for presentation to additionalusers who are interested in the items;

FIG. 8 is a flow chart illustrating an example method of storing nuggetsof information that are relevant to items for presentation to additionalusers who are interested in the items; and

FIG. 9 is a block diagram of a machine in the example form of a computersystem within which instructions for causing the machine to perform anyone or more of the methodologies discussed herein may be executed.

DETAILED DESCRIPTION

In the following description, for purposes of explanation, numerousspecific details are set forth in order to provide an understanding ofvarious embodiments of the inventive subject matter. It will be evident,however, to those skilled in the art that embodiments may be practicedwithout these specific details. Further, to avoid obscuring theinventive concepts in unnecessary detail, well-known instructioninstances, protocols, structures, and techniques have not been shown indetail. As used herein, the term “or” may be construed in an inclusiveor exclusive sense, the term “user” may be construed to include a personor a machine, and the term “interface” may be construed to include anapplication program interface (API) or a user interface. As used herein,the term “item” refers to a good or a service that is capable of beinglisted on a network-based publication system (e.g., eBay, Craigslist, orAmazon.com).

In various embodiments, a method of enhancing search results pertainingto an item with information about the item from a social network isdisclosed. It is detected that a user is searching for information aboutthe item in a context outside of a social networking context. Datarelating to the item is collected from a social network of the user. Anotification of the data relating to the item is generated to supplementa search result that is to be presented to the user in response to thesearching.

This method and other methods or embodiments disclosed herein may beimplemented as a computer system having one or more modules (e.g.,hardware modules or software modules). This method and other methods orembodiments disclosed herein may be embodied as instructions stored on amachine-readable medium that, when executed by a processor, cause theprocessor to perform the method.

FIG. 1 is a network diagram depicting a client-server system 100, withinwhich various example embodiments may be deployed. A networked system102, in the example forms of a network-based publication system or othercommunication system, provides server-side functionality, via a network104 (e.g., the Internet or Wide Area Network (WAN)) to one or moreclients. FIG. 1 illustrates, for example, a web client 106 (e.g., abrowser, such as the Internet Explorer browser developed by MicrosoftCorporation of Redmond, Wash.) and a programmatic client 108 executingon respective client machines 110 and 112. Each of the one or moreclients 106, 108 may include a software application module (e.g., aplug-in, add-in, or macro) that adds a specific service or feature to alarger system.

Within the networked system 102, an API server 114 and a web server 116are coupled to, and provide programmatic and web interfaces respectivelyto, one or more application servers 118. The application servers 118host one or more applications (e.g., marketplace application(s) 120 andpayment application(s) 122). The application servers 118 are, in turn,shown to be coupled to one or more databases servers 124 that facilitateaccess to one or more databases or NoSQL or non-relational data stores126.

An additional networked system 152, in the example forms of a socialnetworking system or other communication system, provides server-sidefunctionality, via a network 104 to the one or more clients.

Within the networked system 152, an API server 164 and a web server 166are coupled to, and provide programmatic and web interfaces respectivelyto, one or more application servers 168. The application servers 168host one or more applications (e.g., social networking application(s)170). The application servers 168 are, in turn, shown to be coupled toone or more databases servers 174 that facilitate access to one or moredatabases or NoSQL or non-relational data stores 176.

The applications 120, 122, and 170 may provide a number of functions andservices to users who access the networked systems 102 and 152. Whilethe applications are shown in FIG. 1 to form part of the networkedsystems 102 and 152, in alternative embodiments, the applications mayform part of a service that is separate and distinct from the networkedsystems 102 and 152.

Further, while the system 100 shown in FIG. 1 employs a client-serverarchitecture, various embodiments are, of course, not limited to such anarchitecture, and could equally well find application in a distributed,or peer-to-peer, architecture system, for example. The variousapplications could also be implemented as standalone software programs,which do not necessarily have computer networking capabilities.Additionally, although FIG. 1 depicts machines 130, 110, and 112 asbeing coupled to a networked system 102 and networked system 152, itwill be readily apparent to one skilled in the art that machines 130,110, and 112, as well as client 128, 106, and 108, may be coupled tomultiple additional networked systems. For example, the clients 128,106, and 108 may be coupled to multiple applications, such as paymentapplications 122 associated with multiple payment processors (e.g.,Visa, MasterCard, and American Express).

The web client 106 accesses the various applications 120, 122, and 170via the web interface supported by the web server 116 or the web server166 respectively. Similarly, the programmatic client 108 accesses thevarious services and functions provided by the applications 120, 122,and 170 via the programmatic interface provided by the API server 114and API server 164, respectively. The programmatic client 108 may, forexample, perform batch-mode communications between the programmaticclient 108 and the networked systems 102 and 152.

FIG. 1 also illustrates a third party application 128, executing on athird party server machine 130, as having programmatic access to thenetworked systems 102 and 152 via the programmatic interface provided bythe API server 114 and the API server 164, respectively. For example,the third party application 128 may, utilizing information retrievedfrom the networked systems 102 and 152, support one or more features orfunctions on a website hosted by the third party. The third partywebsite may, for example, provide one or more promotional,social-networking, or payment functions that are supported by therelevant applications of the networked system 102.

FIG. 2 is a block diagram illustrating multiple applications 120 and 122that, in one example embodiment, are provided as part of the networkedsystem 102. The applications 120 and 122 may be hosted on dedicated orshared server machines (not shown) that are communicatively coupled toenable communications between server machines. The applications 120 and122 themselves are communicatively coupled (e.g., via appropriateinterfaces) to each other and to various data sources, so as to allowinformation to be passed between the applications 120 and 122, or so asto allow the applications 120 and 122 to share and access common data.The applications 120 and 122 may furthermore access one or moredatabases 126 via the database servers 124 of FIG. 1.

The networked system 102 (FIG. 1) may provide a number of publishing,listing and price-setting mechanisms whereby a seller may list (orpublish information concerning) goods or services for sale, a buyer canexpress interest in or indicate a desire to purchase such goods orservices, and a price can be set for a transaction pertaining to thegoods or services. To this end, in FIG. 2, the marketplace and paymentapplications 120 and 122 are shown to include at least one publicationapplication 200 and one or more auction applications 202, which supportauction-format listing and price setting mechanisms (e.g., English,Dutch, Vickrey, Chinese, Double, Reverse auctions etc.). The variousauction applications 202 may also provide a number of features insupport of such auction-format listings, such as a reserve price featurewhereby a seller may specify a reserve price in connection with alisting, and a proxy-bidding feature whereby a bidder may invokeautomated proxy bidding.

A number of fixed-price applications 204 may support fixed-price listingformats (e.g., the traditional classified advertisement-type listing ora catalogue listing) and buyout-type listings. Specifically, buyout-typelistings (e.g., including the Buy-It-Now (BIN) technology developed byeBay Inc., of San Jose, Calif.) may be offered in conjunction withauction-format listings, and allow a buyer to purchase goods orservices, which are also being offered for sale via an auction, for afixed-price that is typically higher than the starting price of theauction.

Store applications 206 allow a seller to group listings within a“virtual” store, which may be branded and otherwise personalized by andfor the seller. Such a virtual store may also offer promotions,incentives and features that are specific and personalized to a relevantseller.

Reputation applications 208 allow users that transact, utilizing thenetworked system 102, to establish, build, and maintain reputations,which may be made available and published to potential trading partners.Consider that where, for example, the networked system 102 supportsperson-to-person trading, users may otherwise have no history or otherreference information whereby the trustworthiness and credibility ofpotential trading partners may be assessed. The reputation applications208 allow a user (for example through feedback provided by othertransaction partners) to establish a reputation within the networkedsystem 102 over time. Other potential trading partners may thenreference such a reputation for the purposes of assessing credibilityand trustworthiness.

Personalization applications 210 allow users of the networked system 102to personalize various aspects of their interactions with the networkedsystem 102. For example a user may, utilizing an appropriatepersonalization application 210, create a personalized reference page atwhich information regarding transactions to which the user is (or hasbeen) a party may be viewed. Further, a personalization application 210may enable a user to personalize listings and other aspects of theirinteractions with the networked system 102 and other parties.

The networked system 102 may support a number of marketplaces that arecustomized, for example, for specific geographic regions. A version ofthe networked system 102 may be customized for the United Kingdom,whereas another version of the networked system 102 may be customizedfor the United States. Each of these versions may operate as anindependent marketplace, or may be customized (or internationalized)presentations of a common underlying marketplace. The networked system102 may accordingly include a number of internationalizationapplications 212 that customize information (and/or the presentation ofinformation) by the networked system 102 according to predeterminedcriteria (e.g., geographic, demographic or marketplace criteria). Forexample, the internationalization applications 212 may be used tosupport the customization of information for a number of regionalwebsites that are operated by the networked system 102 and that areaccessible via respective web servers 116 (FIG. 1).

Navigation of the networked system 102 may be facilitated by one or morenavigation applications 214. In order to make listings available via thenetworked system 102 as visually informing and attractive as possible,the marketplace and payment applications 120 and 122 may include one ormore imaging applications 216, which users may utilize to upload imagesfor inclusion within listings. The imaging applications 216 also operateto incorporate images within viewed listings. The imaging applications216 may also support one or more promotional features, such as imagegalleries that are presented to potential buyers. For example, sellersmay pay an additional fee to have an image included within a gallery ofimages for promoted items.

Listing creation applications 218 allow sellers to conveniently authorlistings pertaining to goods or services that they wish to transact viathe networked system 102, and listing management applications 220 allowsellers to manage such listings. Specifically, where a particular sellerhas authored and/or published a large number of listings, the managementof such listings may present a challenge. The listing managementapplications 220 provide a number of features (e.g., auto-relisting,inventory level monitors, etc.) to assist the seller in managing suchlistings. One or more post-listing management applications 222 alsoassist sellers with a number of activities that typically occurpost-listing. For example, upon completion of an auction facilitated byone or more auction applications 202, a seller may wish to leavefeedback regarding a particular buyer. To this end, a post-listingmanagement application 222 may provide an interface to one or morereputation applications 208, so as to allow the seller to convenientlyprovide feedback regarding multiple buyers to the reputationapplications 208.

Dispute resolution applications 224 provide mechanisms whereby disputesarising between transacting parties may be resolved. For example, thedispute resolution applications 224 may provide guided procedureswhereby the parties are guided through a number of operations in anattempt to settle a dispute. In the event that the dispute cannot besettled via the guided procedures, the dispute may be escalated to athird party mediator or arbitrator.

A number of fraud prevention applications 226 implement fraud detectionand prevention mechanisms to reduce the occurrence of fraud within thenetworked system 102.

Messaging applications 228 are responsible for the generation anddelivery of messages to users of the networked system 102. Thesemessages may, for example, advise users regarding the status of listingsat the networked system 102 (e.g., providing “outbid” notices to biddersduring an auction process or providing promotional and merchandisinginformation to users). Respective messaging applications 228 may utilizeany one of a number of message delivery networks and platforms todeliver messages to users. For example, messaging applications 228 maydeliver electronic mail (e-mail), instant message (IM), Short MessageService (SMS), text, facsimile, or voice (e.g., Voice over IP (VoIP))messages via the wired (e.g., the Internet), Plain Old Telephone Service(POTS), or wireless (e.g., mobile, cellular, WiFi, WiMAX) networks.

Merchandising applications 230 support various merchandising functionsthat are made available to sellers to enable sellers to increase salesvia the networked system 102. The merchandising applications 230 alsooperate the various merchandising features that may be invoked bysellers, and may monitor and track the success of merchandisingstrategies employed by sellers.

The networked system 102 itself, or one or more parties that transactvia the networked system 102, may operate loyalty programs that aresupported by one or more loyalty/promotion applications 232. Forexample, a buyer may earn loyalty or promotions points for eachtransaction established and/or concluded with a particular seller, andmay be offered a reward for which accumulated loyalty points can beredeemed.

Social networking integration application(s) 234 may support interfacingbetween the system 102 and an additional system (e.g., thesocial-networking system 152). For example, the social networkingintegration application(s) 234 may allow the system 102 to access aFacebook account of a user (e.g., on social-networking system 152) tocollect information from a social network of the user, includinginformation about items listed on the system 102 that are referred to inwall or other postings made by additional users that are visible to theuser or other content pertaining to such items that is accessible (e.g.,via API calls) to systems external to the additional system.

FIG. 3 is a block diagram illustrating example modules of the socialnetworking integration application(s) 234 of FIG. 2. The search module302 may be configured to detect that a user is searching for informationabout an item at a first system. The collection module 304 may beconfigured to collect additional information about the item from asecond system. In various embodiments, the second system is externalfrom the first system. The notification module 306 may be configured togenerate a notification of the additional information. The notificationmay be integrated into a presentation of search results pertaining to asearch query entered by the user with respect to the first system. Theinventory module 308 may receive, store, and retrieve information aboutitems in personal inventories of users.

FIG. 4 is a flow chart illustrating an example method 400 ofsupplementing a presentation of search results pertaining to an itemwith information about the item collected from a social network of auser. In various embodiments, the method 400 may be implemented bymodules of the social networking integration application(s) 234. Atoperation 402, the search module determines that the user is searchingfor information about the item outside of a social networking context.For example, the search module receives a notification that a user hasscanned a bar code associated with the item (e.g., via a mobile localcommerce application, such as a RedLaser application executing on amobile phone of the user). Or the search module determines that the userhas entered a search query that includes keywords associated with theitem.

At operation 404, the collection module collects data relating to theitem from a social network of the user. For example, the collectionmodule accesses an account of the user on a social networking system(e.g., Facebook) and identifies data items pertaining to the item thatare in data feeds that are accessible to the user. Such data feeds mayinclude data feeds made visible to the user by friends of the user orother users of the social networking system.

At operation 406, the notification module generates a notification ofthe data relating to the item. The notification may supplement a searchresult that is to be presented to the user in response to the searching.For example, if the search module detects that the user is searching fora local store that has a particular brand of an Android tablet personalcomputer in stock (e.g., based on a scanning of a bar code by the uservia a local commerce application), the notification module may generatea notification that includes various information, such as additionalusers in the user's social network that own the item, comments thatadditional users have made pertaining to the item, ratings by theadditional users of the item, information about ownership of the item bythe additional users, whether the additional users are willing to sellthe item, and so on. The notification module may filter or sort the datarelating to the item based on various factors, such as the relatednessof an source or author of the data item to the user, a geographical ortopographical closeness of the source or author of the data item to theuser, a relevance of the data item to the user's search based on, forexample, attributes of a publisher of the data item (e.g., whether thepublisher of the data item is a current owner or past owner of the itemfor which the user seeks information). This notification may then bepresented to the user to enhance standard search results, such as thenames and locations of nearby stores that have the item in stock, thatare presented to the user in response to the query entered by the user.

FIG. 5 is a flow chart illustrating an example method 500 of notifying auser who is looking for a local store that has an item in stock of anadditional user in the user's social network who owns the item. Invarious embodiments, the method 500 may be implemented by modules of thesocial networking integration application(s) 234. At operation 502, thesearch module determines that the user is searching for local retailersthat have an item in stock. In various embodiments, the search moduledetermines a specific model number or version of the item that the useris searching for (e.g., based on keywords entered by the user). Forexample, the search module may determine that the user is searchingspecifically for an iPhone 5, and not other versions of the iPhone.

At operation 504, the collection module identifies that an additionaluser has the item in a personal inventory. In various embodiments, theadditional user may be selected based on a relatedness to the user in asocial network of the user. For example, the additional user may be afriend of the user or a friend-of-a-friend of the user. In variousembodiments, the collection module may filter out items that are not ofthe specific version that the search module determines that the user issearching for. For example, the collection module may not collect datafrom the user's social network that pertains to the iPhone 3G or iPhone4 based on the search module determining that the user is searchingspecifically for the iPhone 5. Alternatively, the collection module maycollect data pertaining to the iPhone generally regardless of whetherthe search module determines that the user is searching specifically forthe iPhone 5.

At operation 506, the notification module 306 generates a notificationthat includes a specification that the user has the item in his personalinventory. In various embodiments, the notification may be used tosupplement search results corresponding to the searching for the localretailers by the user. Such search results may include a listing oflocal retailers that have the item in stock. Thus, for example, thenotification module 306 may provide a notification that may beincorporated into search results presented to a user via a localcommerce application (e.g., RedLaser), such that the user is presentednot only with a list of local retailers that have the item in stock, andvarious other information pertaining to the item (e.g., price, quantity,description, and so on), but also information about users in the socialnetwork of the user who own the item or may be willing to sell the itemto the user. In various embodiments, the notification includesinformation only for additional users in the user's social network whoare willing to sell the item to the user.

FIG. 6 is a flow chart illustrating an example method 600 of notifying auser of information from a social network of the user that is relevantto a user's search for information about an item. In variousembodiments, the method 600 may be implemented by modules of the socialnetworking integration application(s) 234. At operation 602, the searchmodule detects that a user is searching for information pertaining to anitem. Additionally, the search module detects the context in which theuser is searching for the information pertaining to the item (e.g., alocal commerce context, an internet searching context, an onlineshopping context, and so on). For example, the search module may detectthat the user is searching for information about the item in a localcommerce context based on the user scanning a barcode for the item via alocal commerce application (e.g., RedLaser). Or the search module maydetect that the user is searching for the information pertaining to theitem in a general context based on the user entering a search query at asearch engine (e.g., Google or Yahoo!). Or the search module may detectthat the user is searching for the item in an online shopping contextbased on the user entering a search term at an Internet commerce website (e.g., eBay, Amazon.com, and so on).

At operation 604, the collection module searches a second system (e.g.,social network of the user) for additional information pertaining to theitem. In various embodiments, the second system may be a socialnetworking system of the user (e.g., Facebook or LinkedIn). In variousembodiments, the second system may be a system associated with atracking application installed by the user and the additional users. Thetracking application may track information provided by the users withrespect to the item or monitor and log behavior of the users withrespect to the items.

Thus, the additional information may be different information than theinformation that is presented to the user at a first system (e.g.,Google, Yahoo!, or eBay) in response to the user entering a query forthe information about the item at the first system. In variousembodiments, the collection module collects the additional informationabout the item from content items (e.g., news feeds) that are accessibleto the user via the second system. In various embodiments, thecollection module collects the additional information from a databasemaintained by the first system to store information provided by theadditional users or determined based on a monitoring of the additionalusers. For example, the collection module may access the second systemon behalf of the second user to collect the information. In variousembodiments, the collection module collects the additional informationprior to the detecting of the searching for the information about theitem by the user, storing the additional information in a database forlater access (e.g., upon a detection of the searching for theinformation about the item by the user).

At operation 606, the collection module determines a type of theadditional information. For example, the collection module determinesthat the type of the additional information is one of severalpre-defined types. Such predefined types may include, for example,knowledge about the item, ownership of the item, feedback provided aboutthe item, a rating of the item, a willingness to sell the item,expertise in using the item, purchase guidance pertaining to the item,and so on.

At operation 608, the notification module notifies the user of theadditional information. In various embodiments, the additionalinformation may then be presented to the user along with informationthat is included in search results provided to the user in response tothe query entered by the user at operation 602. In various embodiments,a notification generated by the notification module includes adesignation of a relevance of the additional information based on thedetected context of the user's search for the information about the itemand based on the type of the collected additional information. Forexample, if a user is searching for information about the item in anonline shopping context, the types of the additional information thatare most relevant may include shopping guidance or ratings. Thenotification may then designate such types of the additional informationas being more relevant than other types of the additional information(e.g., via a relevance score). In various embodiments, the notificationmodule may also filter the additional information based on acorrespondence between the context of the user's search and the type ofthe information. In this way, the notification module may allow anapplication to integrate only the most relevant collected additionalinformation into the search results that the application presents to theuser in response to the user's query for information about the item.

FIG. 7 is a flow chart illustrating an example method 700 of storingnuggets of information that are relevant to items for presentation toadditional users who are interested in the items. In variousembodiments, the method 700 may be implemented by modules of the socialnetworking integration application(s) 234. At operation 702, thecollection module determines that a user has a nugget of informationthat is relevant to an item. For example, the collection module maydetermine that the user has purchased the item and thus has informationpertaining to the cost of the item, where to obtain the item, and so on.Or the collection module may determine that the user has commented onthe item and thus has information about a quality of the item, how touse the item, and so on. The nugget of information may be uniqueinformation generated by the user (e.g., information posted by the userin a news feed on a social networking system). In other words, it may bedifferent information than what an additional user may be presented within standard search results presented to the additional user in responseto a query initiated by the additional user at a search engine system orvia a local commerce application.

At operation 704, the collection module stores the nugget of informationabout the item. In various embodiments, the collection module promptsthe user to provide the information based on a determination that theuser has the information. For example, the collection module prompts theuser to enter a purchase price of the item based on a determination thatthe user purchased the item. In other embodiments, the collection moduledetermines the information from information known about the user (e.g.,a transaction history, a feedback rating posted by the user, and so on).

At operation 706, the search module identifies that an additional useris interested in the item. For example, the search module identifiesthat the additional user has entered a search term pertaining to theitem at a search engine. Or the search module identifies that theadditional user has scanned a bar code corresponding to the item in alocal commerce application.

At operation 708, the notification module retrieves the nugget ofinformation from the database for presentation to the user. In variousembodiments, the nugget of information is presented to the user insteadof or in conjunction with standard search results presented to the userby the application through which the user expressed the interest in theitem.

FIG. 8 is a flow chart illustrating an example method 800 of storingnuggets of information that are relevant to items for presentation toadditional users who are interested in the items. In variousembodiments, the method 800 may be implemented by modules of the socialnetworking integration application(s) 234. At operation 802, theinventory module receives a personal inventory from a user. The personalinventory may include information about each of the one or more items,such as the name of the item, the type of the item, the purchase priceof the item, whether the user owns the item, whether the user is willingto sell the item, a selling price for the item, a rating of the item,feedback associated with the item, and so on. At operation 804, theinventory module stores the received personal inventory in a database.

At operation 806, the search module determines that an additional useris interested in an item. For example, the search module determines thatthe user has scanned a bar code for the item using a local commerceapplication.

At operation 808, the inventory module determines that the item that theadditional user is interested in is included in the personal inventoryof the user.

At operation 810, the notification module notifies the additional userthat the item that the user is interested in is in the personalinventory of the user. The notification module may also notify the userof any of the information about the item that is included in thepersonal inventory. In various embodiments, the notification moduleprovides the user with information about the item that is included inthe personal inventory of the additional user based on a relatedness ofthe user to the additional user. For example, the notification moduleprovides the additional user with information about the personalinventory of the user based on the a determination that the user and theadditional users are friends with respect to a social networking system.

FIG. 9 is a block diagram of a machine in the example form of a computersystem 1100 within which instructions for causing the machine to performany one or more of the methodologies discussed herein may be executed.In alternative embodiments, the machine operates as a standalone deviceor may be connected (e.g., networked) to other machines. In a networkeddeployment, the machine may operate in the capacity of a server or aclient machine in a server-client network environment, or as a peermachine in a peer-to-peer (or distributed) network environment. Themachine may be a personal computer (PC), a tablet PC, a set-top box(STB), a personal digital assistant (PDA), a cellular telephone, a webappliance, a network router, switch or bridge, or any machine capable ofexecuting instructions (sequential or otherwise) that specify actions tobe taken by that machine. Further, while only a single machine isillustrated, the term “machine” shall also be taken to include anycollection of machines that individually or jointly execute a set (ormultiple sets) of instructions to perform any one or more of themethodologies discussed herein.

The example computer system 1100 includes a processor 1102 (e.g., acentral processing unit (CPU), a graphics processing unit (GPU) orboth), a main memory 1104 and a static memory 1106, which communicatewith each other via a bus 1108. The computer system 1100 may furtherinclude a video display unit 1110 (e.g., a liquid crystal display (LCD)or a cathode ray tube (CRT)). The computer system 1100 also includes analphanumeric input device 1112 (e.g., a keyboard), a user interfacenavigation (or cursor control) device 1114 (e.g., a mouse), a storageunit 1116, a signal generation device 1118 (e.g., a speaker), and anetwork interface device 1120.

The disk drive unit 1116 includes a machine-readable medium 1122 onwhich is stored one or more sets of data structures and instructions1124 (e.g., software) embodying or utilized by any one or more of themethodologies or functions described herein. The instructions 1124 mayalso reside, completely or at least partially, within the main memory1104 and/or within the processor 1102 during execution thereof by thecomputer system 1100, with the main memory 1104 and the processor 1102also constituting machine-readable media. The instructions 1124 may alsoreside, completely or at least partially, within the static memory 1106.

While the machine-readable medium 1122 is shown in an example embodimentto be a single medium, the term “machine-readable medium” may include asingle medium or multiple media (e.g., a centralized or distributeddatabase, and/or associated caches and servers) that store the one ormore instructions or data structures. The term “machine-readable medium”shall also be taken to include any tangible medium that is capable ofstoring, encoding or carrying instructions for execution by the machineand that cause the machine to perform any one or more of themethodologies of the present embodiments, or that is capable of storing,encoding or carrying data structures utilized by or associated with suchinstructions. The term “machine-readable medium” shall accordingly betaken to include, but not be limited to, solid-state memories, andoptical and magnetic media. Specific examples of machine-readable mediainclude non-volatile memory, including by way of example semiconductormemory devices, e.g., Erasable Programmable Read-Only Memory (EPROM),Electrically Erasable Programmable Read-Only Memory (EEPROM), and flashmemory devices; magnetic disks such as internal hard disks and removabledisks; magneto-optical disks; and compact disc-read-only memory (CD-ROM)and digital versatile disc (or digital video disc) read-only memory(DVD-ROM) disks.

The instructions 1124 may further be transmitted or received over acommunications network 1126 using a transmission medium. In variousembodiments, the network 1126 corresponds to the network 104 of FIG. 1.The instructions 1124 may be transmitted using the network interfacedevice 1120 and any one of a number of well-known transfer protocols(e.g., Hyper Text Transfer Protocol (HTTP)). Examples of communicationnetworks include a local area network (LAN), a WAN, the Internet, mobiletelephone networks, Plain Old Telephone (POTS) networks, and wirelessdata networks (e.g., WiFi and WiMax networks). The term “transmissionmedium” shall be taken to include any intangible medium that is capableof storing, encoding or carrying instructions for execution by themachine, and includes digital or analog communications signals or otherintangible media to facilitate communication of such software.

Although an embodiment has been described with reference to specificexample embodiments, it will be evident that various modifications andchanges may be made to these embodiments without departing from thebroader spirit and scope of the invention. Accordingly, thespecification and drawings are to be regarded in an illustrative ratherthan a restrictive sense. The accompanying drawings that form a parthereof, show by way of illustration, and not of limitation, specificembodiments in which the subject matter may be practiced. Theembodiments illustrated are described in sufficient detail to enablethose skilled in the art to practice the teachings disclosed herein.Other embodiments may be utilized and derived therefrom, such thatstructural and logical substitutions and changes may be made withoutdeparting from the scope of this disclosure. This Detailed Description,therefore, is not to be taken in a limiting sense, and the scope ofvarious embodiments is defined only by the appended claims, along withthe full range of equivalents to which such claims are entitled.

Such embodiments of the inventive subject matter may be referred toherein, individually and/or collectively, by the term “invention” merelyfor convenience and without intending to voluntarily limit the scope ofthis application to any single invention or inventive concept if morethan one is in fact disclosed. Thus, although specific embodiments havebeen illustrated and described herein, it should be appreciated that anyarrangement calculated to achieve the same purpose may be substitutedfor the specific embodiments shown. This disclosure is intended to coverany and all adaptations or variations of various embodiments.Combinations of the above embodiments, and other embodiments notspecifically described herein, will be apparent to those of skill in theart upon reviewing the above description.

What is claimed is:
 1. A system comprising: one or more computerprocessors; one or more computer memories; a set of instructionsincorporated into the one or more computer memories, the set ofinstructions configuring the one or more computer processors to performoperations for enhancing a search results user interface with postingdata corresponding to a listing of an item on a network-basedpublication system that is included in a search result, the posting databeing derived from a social networking system, the operationscomprising: receiving a search query entered by a user via anapplication executing on a device of the user; based on the receiving ofthe search query, collecting the posting data from the social networkingsystem, the posting data having been submitted by people to whom theuser is connected via the social networking system; determining arelevance score to associate with the posting data based on a type ofthe posting data; and generating a notification relating to the item,the notification including the posting data and the relevance scoreassociated with the data, to supplement a search result that is to bepresented to the user in the search results user interface in responseto the receiving of the search query.
 2. The system of claim 1, whereinthe determining of the relevance score is further based on a relatednessbetween the user and the people to whom the user is connected.
 3. Thesystem of claim 1, wherein the posting data includes a rating of theitem by one of the people to whom the user is connected.
 4. The systemof claim 1, wherein the posting data includes information pertaining toownership of the item among the people to whom the user is connected. 5.The system of claim 4, wherein the posting data includes informationpertaining to a geographical location of the people to whom the user isconnected.
 6. The system of claim 1, wherein the posting data includescomments pertaining to the item that were posted on the socialnetworking system by the people to whom the user is connected.
 7. Thesystem of claim 6, wherein the collecting of the posting data is basedon the posting data being included in a news feed on the socialnetworking system that is accessible to the user.
 8. A methodcomprising: incorporating a set of instructions into one or morecomputer memories, the set of instructions configuring the one or morecomputer processors to perform operations for enhancing a search resultsuser interface with posting data corresponding to a listing of an itemon a network-based publication system that is included in a searchresult, the posting data being derived from a social networking system,the posting data being derived from a social networking system, theoperations comprising: receiving a search query entered by a user via anapplication executing on a device of the user; based on the receiving ofthe search query, collecting the posting data from the social networkingsystem, the posting data having been submitted by people to whom theuser is connected via the social networking system; determining arelevance score to associate with the posting data based on a type ofthe posting data; and generating a notification relating to the item,the notification including the posting data and the relevance scoreassociated with the data, to supplement a search result that is to bepresented to the user in the search results user interface in responseto the receiving of the search query.
 9. The method of claim 8, whereinthe determining of the relevance score is further based on a relatednessbetween the user and the people to whom the user is connected.
 10. Themethod of claim 8, wherein the posting data includes a rating of theitem by one of the people to whom the user is connected.
 11. The methodof claim 8, wherein the posting data includes information pertaining toownership of the item among the people to whom the user is connected.12. The method of claim 11, wherein the posting data includesinformation pertaining to a geographical location of the people to whomthe user is connected.
 13. The method of claim 8, wherein the postingdata includes comments pertaining to the item that were posted on thesocial networking system by the people to whom the user is connected.14. The method of claim 8, wherein the collecting of the posting data isbased on the posting data being included in a news feed on the socialnetworking system that is accessible to the user.
 15. A non-transitorymachine-readable medium embodying a set of instructions, the set ofinstructions configuring one or more computer processors to performoperations enhancing a search results user interface with posting datacorresponding to a listing of an item on a network-based publicationsystem that is included in a search result, the posting data beingderived from a social networking system, the posting data being derivedfrom a social networking system, the operations comprising: receiving asearch query entered by a user via an application executing on a deviceof the user; based on the receiving of the search query, collecting theposting data from the social networking system, the posting data havingbeen submitted by people to whom the user is connected via the socialnetworking system; determining a relevance score to associate with theposting data based on a type of the posting data; and generating anotification relating to the item, the notification including theposting data and the relevance score associated with the data, tosupplement a search result that is to be presented to the user in thesearch results user interface in response to the receiving of the searchquery.
 16. The non-transitory machine-readable medium of claim 15,wherein the determining of the relevance score is further based on arelatedness between the user and the people to whom the user isconnected.
 17. The non-transitory machine-readable medium of claim 15,wherein the posting data includes a rating of the item by one of thepeople to whom the user is connected.
 18. The non-transitorymachine-readable medium of claim 15, wherein the posting data includesinformation pertaining to ownership of the item among the people to whomthe user is connected.
 19. The non-transitory machine-readable medium ofclaim 18, wherein the posting data includes information pertaining to ageographical location of the people to whom the user is connected. 20.The non-transitory machine-readable medium of claim 15, wherein theposting data includes comments pertaining to the item that were postedon the social networking system by the people to whom the user isconnected.